pub fn dp_rec_mc(amount: u32) -> u32 {
    // 定义纸币面额数组
    let denominations = [100, 50, 30, 20, 10, 5, 2, 1];

    // 初始化剩余金额和纸币计数
    let mut remaining_amount = amount;
    let mut coin_count = 0;

    // 从最大面额开始尝试找零
    for &denomination in denominations.iter() {
        while remaining_amount >= denomination {
            remaining_amount -= denomination;
            coin_count += 1;
        }
    }

    coin_count
}